home *** CD-ROM | disk | FTP | other *** search
/ IRIX 6.2 Development Libraries / SGI IRIX 6.2 Development Libraries.iso / dist / complib.idb / usr / share / catman / p_man / cat3 / complib / dsbgst.z / dsbgst
Text File  |  1996-03-14  |  4KB  |  133 lines

  1.  
  2.  
  3.  
  4. DDDDSSSSBBBBGGGGSSSSTTTT((((3333FFFF))))                                                          DDDDSSSSBBBBGGGGSSSSTTTT((((3333FFFF))))
  5.  
  6.  
  7.  
  8. NNNNAAAAMMMMEEEE
  9.      DSBGST - reduce a real symmetric-definite banded generalized eigenproblem
  10.      A*x = lambda*B*x to standard form C*y = lambda*y,
  11.  
  12. SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
  13.      SUBROUTINE DSBGST( VECT, UPLO, N, KA, KB, AB, LDAB, BB, LDBB, X, LDX,
  14.                         WORK, INFO )
  15.  
  16.          CHARACTER      UPLO, VECT
  17.  
  18.          INTEGER        INFO, KA, KB, LDAB, LDBB, LDX, N
  19.  
  20.          DOUBLE         PRECISION AB( LDAB, * ), BB( LDBB, * ), WORK( * ), X(
  21.                         LDX, * )
  22.  
  23. PPPPUUUURRRRPPPPOOOOSSSSEEEE
  24.      DSBGST reduces a real symmetric-definite banded generalized eigenproblem
  25.      A*x = lambda*B*x  to standard form  C*y = lambda*y, such that C has the
  26.      same bandwidth as A.
  27.  
  28.      B must have been previously factorized as S**T*S by DPBSTF, using a split
  29.      Cholesky factorization. A is overwritten by C = X**T*A*X, where X =
  30.      S**(-1)*Q and Q is an orthogonal matrix chosen to preserve the bandwidth
  31.      of A.
  32.  
  33.  
  34. AAAARRRRGGGGUUUUMMMMEEEENNNNTTTTSSSS
  35.      VECT    (input) CHARACTER*1
  36.              = 'N':  do not form the transformation matrix X;
  37.              = 'V':  form X.
  38.  
  39.      UPLO    (input) CHARACTER*1
  40.              = 'U':  Upper triangle of A is stored;
  41.              = 'L':  Lower triangle of A is stored.
  42.  
  43.      N       (input) INTEGER
  44.              The order of the matrices A and B.  N >= 0.
  45.  
  46.      KA      (input) INTEGER
  47.              The number of superdiagonals of the matrix A if UPLO = 'U', or
  48.              the number of subdiagonals if UPLO = 'L'.  KA >= 0.
  49.  
  50.      KB      (input) INTEGER
  51.              The number of superdiagonals of the matrix B if UPLO = 'U', or
  52.              the number of subdiagonals if UPLO = 'L'.  KA >= KB >= 0.
  53.  
  54.      AB      (input/output) DOUBLE PRECISION array, dimension (LDAB,N)
  55.              On entry, the upper or lower triangle of the symmetric band
  56.              matrix A, stored in the first ka+1 rows of the array.  The j-th
  57.              column of A is stored in the j-th column of the array AB as
  58.              follows:  if UPLO = 'U', AB(ka+1+i-j,j) = A(i,j) for max(1,j-
  59.              ka)<=i<=j; if UPLO = 'L', AB(1+i-j,j)    = A(i,j) for
  60.  
  61.  
  62.  
  63.                                                                         PPPPaaaaggggeeee 1111
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70. DDDDSSSSBBBBGGGGSSSSTTTT((((3333FFFF))))                                                          DDDDSSSSBBBBGGGGSSSSTTTT((((3333FFFF))))
  71.  
  72.  
  73.  
  74.              j<=i<=min(n,j+ka).
  75.  
  76.              On exit, the transformed matrix X**T*A*X, stored in the same
  77.              format as A.
  78.  
  79.      LDAB    (input) INTEGER
  80.              The leading dimension of the array AB.  LDAB >= KA+1.
  81.  
  82.      BB      (input) DOUBLE PRECISION array, dimension (LDBB,N)
  83.              The banded factor S from the split Cholesky factorization of B,
  84.              as returned by DPBSTF, stored in the first KB+1 rows of the
  85.              array.
  86.  
  87.      LDBB    (input) INTEGER
  88.              The leading dimension of the array BB.  LDBB >= KB+1.
  89.  
  90.      X       (output) DOUBLE PRECISION array, dimension (LDX,N)
  91.              If VECT = 'V', the n-by-n matrix X.  If VECT = 'N', the array X
  92.              is not referenced.
  93.  
  94.      LDX     (input) INTEGER
  95.              The leading dimension of the array X.  LDX >= max(1,N) if VECT =
  96.              'V'; LDX >= 1 otherwise.
  97.  
  98.      WORK    (workspace) DOUBLE PRECISION array, dimension (2*N)
  99.  
  100.      INFO    (output) INTEGER
  101.              = 0:  successful exit
  102.              < 0:  if INFO = -i, the i-th argument had an illegal value.
  103.  
  104.  
  105.  
  106.  
  107.  
  108.  
  109.  
  110.  
  111.  
  112.  
  113.  
  114.  
  115.  
  116.  
  117.  
  118.  
  119.  
  120.  
  121.  
  122.  
  123.  
  124.  
  125.  
  126.  
  127.  
  128.  
  129.                                                                         PPPPaaaaggggeeee 2222
  130.  
  131.  
  132.  
  133.